package com.ict.web.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ict.web.controller.file.domain.YzqFile;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 审核出参对象 yzq_approval
 *
 * @author ruoyi
 * @date 2022-02-24
 */
@Data
public class ApprovalVo {
    @ApiModelProperty(value = "审批id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long approvalId;

    @ApiModelProperty(value = "评审任务id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long reviewTaskId;

    @ApiModelProperty(value = "项目id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long projectId;

    @ApiModelProperty(value = "专家id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long expertId;

    @ApiModelProperty(value = "评审对象类型（0:三方1:专家2:项目管理3:项目单位）")
    private String approvalType;

    @ApiModelProperty(value = "阶段")
    private String approvalStage;

    @ApiModelProperty(value = "节点")
    private String approvalNode;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone = "GMT+8")
    @ApiModelProperty(value = "开始时间")
    private LocalDateTime startTime;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone = "GMT+8")
    @ApiModelProperty(value = "结束时间")
    private LocalDateTime endTime;

    @ApiModelProperty(value = "操作人")
    private String approvalOperator;

    @ApiModelProperty(value = "状态")
    private String approvalStatus;

    @ApiModelProperty(value = "操作/申报详情操作")
    private String approvalOperation;

    @ApiModelProperty(value = "审批意见")
    private String approvalOpinion;

    @ApiModelProperty(value = "审核结果")
    private String approvalResult;

    @ApiModelProperty(value = "资料库{文件的url}")
    private String approvalDatabase;

    @ApiModelProperty(value = "删除状态（0:正常1:删除）")
    private String delFlag;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createTime;

    /**更新时间*/
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone = "GMT+8",shape = JsonFormat.Shape.STRING)
    @ApiModelProperty(value = "更新时间")
    private LocalDateTime updateTime;

    @ApiModelProperty(value = "状态名字")
    private String approvalStatusName;

    @ApiModelProperty(value = "资料库名字")
    private String approvalDatabaseName;


    /**年度项目id*/
    @ApiModelProperty(value = "年度项目id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long planId;

    /**关联资源id*/
    @ApiModelProperty(value = "关联资源id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long relationId;

    /**关联文件*/
    @ApiModelProperty(value = "关联文件")
    private List<YzqFile> relationFile;
}
